package com.qk.common;

import lombok.Data;

import java.io.Serializable;
/**
 * @文件名: Result
 * @作者: DX
 * @创建日期: 2025/9/29
 * @描述:后端给前端统一的响应类
 * restful风格 通过请求方式来表达接口的行为
 *
 */
@Data
public class Result  implements Serializable {
    /**
     * 后端统一返回结果
     */
    //状态码
    private Integer code; //编码：1成功，0为失败
    //响应消息
    private String msg; //错误信息
    //响应数据
    private Object data; //数据

    //构造私有化
    private Result() {
    }

    //成功静态方法 比如增删改接口
    public static Result success() {
        Result result = new Result();
        result.code = 1;
        result.msg = "success";
        return result;
    }

    //成功静态方法,一般响应数据给前端，比如查询
    public static Result success(Object data) {
        Result result = new Result();
        result.data = data;
        result.code = 1;
        result.msg = "success";
        return result;
    }

    //失败静态方法
    public static Result error(String msg) {
        Result result = new Result();
        result.msg = msg;
        result.code = 0;
        return result;
    }

}
